package com.connection.second.wallpaper.domain.entity;

import com.connection.second.common.xss.Xss;
import lombok.Data;
import com.connection.second.common.annotation.Excel;
import com.connection.second.common.core.domain.BaseEntity;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import java.io.Serializable;
import java.math.BigDecimal;

/**
 * 专题管理对象 paper_album
 * 
 * @author FL
 * @date 2024-11-12
 */
@Data
public class PaperAlbum extends BaseEntity implements Serializable
{
    private static final long serialVersionUID = 1L;

    /** 唯一标识 */
    private Long id;

    /** 分类id */
    @Excel(name = "分类id")
    private Long classId;

    /** 发布人昵称 */
    @Excel(name = "发布人昵称")
    @Xss(message = "发布人昵称不能包含脚本字符")
    @NotBlank(message = "发布人昵称不能为空")
    @Size(min = 0, max = 30, message = "发布人昵称长度不能超过30个字符")
    private String nickname;

    /** 状态 0审核中 1审核通过 2审核失败 */
    @Excel(name = "状态 0审核中 1审核通过 2审核失败")
    private Integer status;

    /** 发布人id */
    @Excel(name = "发布人id")
    private Long userId;

    /** 专辑评分 */
    @Excel(name = "专辑评分")
    private BigDecimal score;

    /** 专辑浏览次数 */
    @Excel(name = "专辑收藏次数")
    private Long collections;

    /** 专辑封面 */
    @Excel(name = "专辑封面")
    private String imgUrl;

    /** 专辑标题 */
    @Excel(name = "专辑标题")
    @Xss(message = "专辑标题不能包含脚本字符")
    private String title;
    /** 专辑描述 */
    @Excel(name = "专辑描述")
    @Xss(message = "专辑描述不能包含脚本字符")
    private String description;

}
